de.bsvrz.ste.stealgsba.algorithmen.lkwueberholverbotsichtwochentag
Class LkwUeberholverbotSichtWochentagAlg

java.lang.Object
  extended by de.bsvrz.ste.stealgsba.algorithmusrahmen.AlgorithmusrahmenGrundausbau
      extended by de.bsvrz.ste.stealgsba.algorithmusrahmen.AlgorithmusrahmenErweitert
          extended by de.bsvrz.ste.stealgsba.algorithmusrahmen.AlgorithmusrahmenVollausbau
              extended by de.bsvrz.ste.stealgsba.algorithmen.lkwueberholverbotsichtwochentag.LkwUeberholverbotSichtWochentagAlg
All Implemented Interfaces:
de.bsvrz.dav.daf.main.ClientReceiverInterface, de.bsvrz.dav.daf.main.ClientSenderInterface, de.bsvrz.ste.stealgsba.algorithmusrahmen.interfaces.IAlgorithmus, de.bsvrz.ste.stealgsba.algorithmusrahmen.interfaces.IAlgorithmusrahmen, de.bsvrz.ste.stealgsba.algorithmusrahmen.interfaces.IAlgorithmusrahmenVollausbau, de.bsvrz.ste.stealgsba.algorithmusrahmen.interfaces.IMassnahmenbearbeitung, de.bsvrz.ste.stealgsba.algorithmusrahmen.interfaces.ISituationsbearbeitung, de.bsvrz.ste.stealgsba.algorithmusrahmen.interfaces.IUrsacheneinheitenListener, de.bsvrz.ste.stealgsba.algorithmusrahmen.interfaces.IUrsacheneinheitErweiterung, de.bsvrz.sys.funclib.application.StandardApplication, java.util.EventListener

public class LkwUeberholverbotSichtWochentagAlg
extends de.bsvrz.ste.stealgsba.algorithmusrahmen.AlgorithmusrahmenVollausbau
implements de.bsvrz.ste.stealgsba.algorithmusrahmen.interfaces.IAlgorithmus, de.bsvrz.ste.stealgsba.algorithmusrahmen.interfaces.ISituationsbearbeitung, de.bsvrz.ste.stealgsba.algorithmusrahmen.interfaces.IMassnahmenbearbeitung, de.bsvrz.ste.stealgsba.algorithmusrahmen.interfaces.IUrsacheneinheitenListener, de.bsvrz.dav.daf.main.ClientReceiverInterface

Diese Klasse implementiert den Steuerungsalgorithmus LKW-Überholverbot auf Grund von Sichtbehinderungen.

Analog zum LKW-Überholverbot bei Nässe ist auch eine Logik zur Schaltung von LKW-Überholverbot bei Sichtbehinderungen vorgesehen. Bei Überschreitung von bestimmten Einschaltgrenzwerten für die prognostizierte Bemessungsverkehrsstärke und für die prognostizierte richtungsbezogene Lkw-Verkehrsstärke wird anstelle des StVO-Zeichens "Gefahrenstelle" ein Überholverbot für Lkw am AQi angeordnet.

Version:
$Revision: 1.1 $ / $Date: 2015/08/26 13:35:37 $ / ($Author: Asal $)
Author:
Swarco Traffic Systems GmbH, Matthias Obert

Field Summary
 
Fields inherited from class de.bsvrz.ste.stealgsba.algorithmusrahmen.AlgorithmusrahmenErweitert
m_ursacheneinheitTypen
 
Fields inherited from interface de.bsvrz.dav.daf.main.ClientSenderInterface
START_SENDING, STOP_SENDING, STOP_SENDING_NO_RIGHTS, STOP_SENDING_NOT_A_VALID_SUBSCRIPTION
 
Constructor Summary
LkwUeberholverbotSichtWochentagAlg()
          Konstruktor.
 
Method Summary
 boolean empfaengerAnmeldenObjekt(de.bsvrz.dav.daf.main.ClientReceiverInterface instanz, de.bsvrz.dav.daf.main.config.SystemObject objekt, de.bsvrz.dav.daf.main.config.AttributeGroup atg, de.bsvrz.dav.daf.main.config.Aspect asp)
          Für ein Objekt Attributgruppe/Aspekt Kombination am Datenverteiler anmelden.
 void initialize(de.bsvrz.dav.daf.main.ClientDavInterface connection)
           
static void main(java.lang.String[] args)
          Statische Methode für das Starten des Programms.
 de.bsvrz.ste.stealgsba.algorithmusrahmen.Ursacheneinheit objektUrsacheneinheitErstellen(de.bsvrz.dav.daf.main.config.DynamicObject obj)
           
 void parseArguments(de.bsvrz.sys.funclib.commandLineArgs.ArgumentList argumentList)
           
 void starteBerechnung()
           
 void update(de.bsvrz.dav.daf.main.ResultData[] results)
           
 void updateEinzelMassnahme(de.bsvrz.ste.stealgsba.algorithmusrahmen.Ursacheneinheit ue, de.bsvrz.ste.stealgsba.algorithmusrahmen.EinzelMassnahme einzelMassnahme)
           
 void updateUrsachenEinheiten(java.util.List<de.bsvrz.ste.stealgsba.algorithmusrahmen.Ursacheneinheit> addedUrsacheneinheiten, java.util.List<de.bsvrz.ste.stealgsba.algorithmusrahmen.Ursacheneinheit> removedUrsacheneinheiten)
           
 
Methods inherited from class de.bsvrz.ste.stealgsba.algorithmusrahmen.AlgorithmusrahmenVollausbau
getUrsacheneinheitEinzelmassnahme, getUrsachenEinheitEinzelmassnahmenAktiv, getUrsachenEinheitEinzelmassnahmenInaktiv
 
Methods inherited from class de.bsvrz.ste.stealgsba.algorithmusrahmen.AlgorithmusrahmenErweitert
erzeugeMassnahmenanforderung, erzeugeMassnahmenanforderungen, getConnection, gibStatusBeruecksichtigung, gibUrsacheneinheitAktivitaet, gibUrsacheneinheiten, gibUrsacheneinheitenTyp, gibUrsacheneinheitStatus, sendeUrsacheneinheitStatus, setzeCallbackObjekt, setzeStatus, setzeStatusAutomatik, setzeStatusImmerFalsch, setzeStatusImmerWahr, setzeUrsachenEinheitAktiv
 
Methods inherited from class de.bsvrz.ste.stealgsba.algorithmusrahmen.AlgorithmusrahmenGrundausbau
dataRequest, empfängerAnmeldenObjekt, getArgumentList, getAspektVersand, getDeltaPruefen, getZyklusLaenge, getZyklusOffset, gibAnlage, isMindesstandzeitAlsNachlaufzeit, isRequestSupported, isSpontan, loescheMassnahmenanforderung, objektListeErstellen, quelleAbmeldenObjekt, quelleAnmeldenObjekt, senderAnmeldenObjekt, setzeCallbackObjekt, versendeMassnahmenanforderungAspekt, verwalteSemiautomatik
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface de.bsvrz.ste.stealgsba.algorithmusrahmen.interfaces.ISituationsbearbeitung
getConnection, gibAnlage, gibUrsacheneinheitAktivitaet, gibUrsacheneinheiten, gibUrsacheneinheitenTyp, setzeCallbackObjekt, setzeStatus
 
Methods inherited from interface de.bsvrz.ste.stealgsba.algorithmusrahmen.interfaces.IMassnahmenbearbeitung
erzeugeMassnahmenanforderung, erzeugeMassnahmenanforderungen, getConnection, gibAnlage, gibUrsacheneinheitAktivitaet, gibUrsacheneinheiten, gibUrsacheneinheitStatus, setzeCallbackObjekt
 

Constructor Detail

LkwUeberholverbotSichtWochentagAlg

public LkwUeberholverbotSichtWochentagAlg()
Konstruktor.

Festlegung, für welche Typen von Ursacheneineheiten der Algorithmus arbeiten soll. Instanziierung des Objekts für die Massnahmenbearbeitung.

Method Detail

parseArguments

public void parseArguments(de.bsvrz.sys.funclib.commandLineArgs.ArgumentList argumentList)
                    throws java.lang.Exception
Specified by:
parseArguments in interface de.bsvrz.sys.funclib.application.StandardApplication
Overrides:
parseArguments in class de.bsvrz.ste.stealgsba.algorithmusrahmen.AlgorithmusrahmenGrundausbau
Throws:
java.lang.Exception

main

public static void main(java.lang.String[] args)
Statische Methode für das Starten des Programms.

Parameters:
args - Kommandozeilen-Parameter

initialize

public void initialize(de.bsvrz.dav.daf.main.ClientDavInterface connection)
                throws java.lang.Exception
Specified by:
initialize in interface de.bsvrz.sys.funclib.application.StandardApplication
Overrides:
initialize in class de.bsvrz.ste.stealgsba.algorithmusrahmen.AlgorithmusrahmenVollausbau
Throws:
java.lang.Exception

starteBerechnung

public void starteBerechnung()
Specified by:
starteBerechnung in interface de.bsvrz.ste.stealgsba.algorithmusrahmen.interfaces.IAlgorithmus

objektUrsacheneinheitErstellen

public de.bsvrz.ste.stealgsba.algorithmusrahmen.Ursacheneinheit objektUrsacheneinheitErstellen(de.bsvrz.dav.daf.main.config.DynamicObject obj)
Specified by:
objektUrsacheneinheitErstellen in interface de.bsvrz.ste.stealgsba.algorithmusrahmen.interfaces.IUrsacheneinheitenListener

updateEinzelMassnahme

public void updateEinzelMassnahme(de.bsvrz.ste.stealgsba.algorithmusrahmen.Ursacheneinheit ue,
                                  de.bsvrz.ste.stealgsba.algorithmusrahmen.EinzelMassnahme einzelMassnahme)
Specified by:
updateEinzelMassnahme in interface de.bsvrz.ste.stealgsba.algorithmusrahmen.interfaces.IUrsacheneinheitErweiterung
Overrides:
updateEinzelMassnahme in class de.bsvrz.ste.stealgsba.algorithmusrahmen.AlgorithmusrahmenVollausbau

updateUrsachenEinheiten

public void updateUrsachenEinheiten(java.util.List<de.bsvrz.ste.stealgsba.algorithmusrahmen.Ursacheneinheit> addedUrsacheneinheiten,
                                    java.util.List<de.bsvrz.ste.stealgsba.algorithmusrahmen.Ursacheneinheit> removedUrsacheneinheiten)
Specified by:
updateUrsachenEinheiten in interface de.bsvrz.ste.stealgsba.algorithmusrahmen.interfaces.IUrsacheneinheitenListener

empfaengerAnmeldenObjekt

public boolean empfaengerAnmeldenObjekt(de.bsvrz.dav.daf.main.ClientReceiverInterface instanz,
                                        de.bsvrz.dav.daf.main.config.SystemObject objekt,
                                        de.bsvrz.dav.daf.main.config.AttributeGroup atg,
                                        de.bsvrz.dav.daf.main.config.Aspect asp)
Für ein Objekt Attributgruppe/Aspekt Kombination am Datenverteiler anmelden.

Parameters:
instanz - Instanz.
objekt - Objekt.
atg - Attributgruppe.
asp - Aspekt.
Returns:
true = Anmeldung erfolgreich, false = nicht erfolgreich.

update

public void update(de.bsvrz.dav.daf.main.ResultData[] results)
Specified by:
update in interface de.bsvrz.dav.daf.main.ClientReceiverInterface